Thread Transparency in Information Flow Middleware
نویسندگان
چکیده
Applications that process continuous information flows are challenging to write because the application programmer must deal with flow-specific concurrency and timing requirements, necessitating the explicit management of threads, synchronization, scheduling and timing. We believe that middleware can ease this burden, but middleware that supports control-flow centric interaction models such as remote method invocation does not match the structure of these applications. Indeed, it abstracts away from the very things that the information-flow centric programmer must control. We are defining Infopipes as a high-level abstraction for information flow, and we are developing a middleware framework that supports this abstraction directly. Infopipes handle the complexities associated with control flow and multi-threading, relieving the programmer of this task. Starting from a high-level description of an information flow configuration, the framework determines which parts of a pipeline require separate threads or coroutines, and handles synchronization transparently to the application programmer. The framework also gives the programmer the freedom to write or reuse components in a passive style, even though the configuration will actually require the use of a thread or coroutine. Conversely, it is possible to write a component using a thread and know that the thread will be eliminated if it is not needed in a pipeline. This allows the most appropriate programming model to be chosen for a given task, and existing code to be reused irrespective of its activity model.
منابع مشابه
A middleware platform for information flows
Multimedia and other information services rely on distributed information flows with timing constraints. These applications constitute pipelines connecting producers and consumers of information with information flow driving the interaction between stages. The need for timely delivery of information requires programmers to deal with quality of service properties of the flows and to integrate ap...
متن کاملJESSICA: Java-Enabled Single-System-Image Computing Architecture
JESSICA stands for Java-enabled single-system-image computing architecture, a middleware that runs on top of the standard UNIX operating system to support parallel execution of multithreaded Java applications in a cluster of computers. JESSICA hides the physical boundaries between machines and makes the cluster appear as a single computer to applications a single system image. JESSICA supports ...
متن کاملAccess control in ultra-large-scale systems using a data-centric middleware
The primary characteristic of an Ultra-Large-Scale (ULS) system is ultra-large size on any related dimension. A ULS system is generally considered as a system-of-systems with heterogeneous nodes and autonomous domains. As the size of a system-of-systems grows, and interoperability demand between sub-systems is increased, achieving more scalable and dynamic access control system becomes an im...
متن کاملMetadata-Based Middleware for Integrating Information Systems: A Case Study
Distribution and heterogeneity are the most relevant barriers for the development of interoperable information systems. By means of metadata-based middleware distributed and heterogeneous system components can be integrated, thus providing transparency while preserving autonomy. This paper presents a case study of three different projects in the area of metadata-based middleware and compares th...
متن کاملDistributed Clustering and Scheduling of VMs
In this work, we have developed Caft, a middleware that runs on top of the Terracotta system and has the capacity to run simple multithreaded Java applications in a transparent way, scheduling threads across the several nodes in a Terracotta cluster and taking advantage of the extra computational and memory resources available. We use bytecode instrumentations to add clustering capabilities to ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Softw., Pract. Exper.
دوره 33 شماره
صفحات -
تاریخ انتشار 2001